<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      // 一个有名的按摩师会收到源源不断的预约请求，每个预约都可以选择接或不接。在每次预约服务之间要有休息时间，因此她不能接受相邻的预约。给定一个预约请求序列，替按摩师找到最优的预约集合（总预约时间最长），返回总的分钟数。
      // 示例1：
      // 输入： [1,2,3,1]
      // 输出： 4
      // 解释： 选择 1 号预约和 3 号预约，总时长 = 1 + 3 = 4。

      let amd = function (arr) {
        let l = arr.length
        if (!l) return 0
        if (l === 1) return arr[0]
        let res = new Array(l).fill(0)
        res[0] = arr[0]
        res[1] = Math.max(arr[0], arr[1])
        for (let i = 2; i < l; i++) {
          res[i] = Math.max(res[i - 1], res[i - 2] + arr[i])
        }
        return res[l - 1]
      }
      console.log(amd([1, 2, 3, 1]))
      console.log(amd([2, 7, 9, 3, 1]))
      console.log(amd([2, 1, 4, 5, 3, 1, 1, 3]))
    </script>
  </body>
</html>
